/*->h.xext */


typedef int (*extfn)(int fp);    /* external function */

#define PVOID      0
#define PINT       1
#define PSTR       2


extern void addexternfn(extfn exf,char * name,char * params,int ftype);

extern void xstart(void);

extern void xremfile(void);
extern int  xaddfile(char * filename,int mode,int exec);


extern int  * stack;
extern char * stringptr(int s);

extern int  xexec(char * name,char * args,int * argn,int * r0);
extern int  xexec2(char * name,int * argn,int * argm,int * r0);
extern int  xexec3(char * name,char * args,int * r0);

extern void assignstring(int s,char * p);
extern void appendstring(int s,char * p);

extern int  zruns;
extern int  znoerror;
extern int  zlevel;
extern int  scriptstop(void);


#define ZDIVZERO 0
#define ZFILEMAX 1
#define ZUSER    2
#define ZEXIT    3
#define ZMEM     4

#define MAXRUN   5

extern void   zraise(int errno, ...);

extern int osversion(int fp);

